package com.wocharging.base.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;

/**
* <p>
* 充电枪信息
* </p>
* @author yuzhou
* @since 2024-06-179 15:00:10
*/
@Data
@Accessors(chain = true)
@TableName("wo_charge_gun")
@ApiModel(value = "WoChargeGun对象", description = "充电枪信息")
public class WoChargeGun implements Serializable {

    private static final long serialVersionUID = 1L;
    @ApiModelProperty("id")
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    @ApiModelProperty("充电枪编号")
    @TableField("gun_no")
    private String gunNo;

    @ApiModelProperty("充电枪名称")
    @TableField("gun_name")
    private String gunName;

    @ApiModelProperty("状态	0-空闲中 	1-充电中	2-故障	3-离线")
    @TableField("status")
    private Integer status;

    @ApiModelProperty("最后一次更新状态")
    @TableField("last_status_update")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date lastStatusUpdate;

    @ApiModelProperty("车辆连接状态 0- 断开 1-半连接 2-连接	直流目前只有 0 和 2 状态	交流目前有 0、1、2 三种状态只有状态不为 0 时，手机才能下发开机指令")
    @TableField("vehicle_connection_status")
    private Integer vehicleConnectionStatus;

    @ApiModelProperty("设备自身Soc值")
    @TableField("port_curr_soc")
    private String portCurrSoc;

    @ApiModelProperty("备注")
    @TableField("remark")
    private String remark;

    @ApiModelProperty("1:可用 0:删除")
    @TableField("flag")
    private Integer flag;

    @ApiModelProperty("创建人")
    @TableField("create_by")
    private String createBy;

    @ApiModelProperty("创建时间")
    @TableField("create_time")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date createTime;

    @ApiModelProperty("更新人")
    @TableField("update_by")
    private String updateBy;

    @ApiModelProperty("更新时间")
    @TableField("update_time")
    @JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8")
    private Date updateTime;

}
